application.properties ফাইলে Logging কনফিগারেশন

Spring Boot এবং Logging - স্প্রিং বুট (Spring Boot) - Java Technologies

222

স্প্রিং বুট (Spring Boot) ডিফল্টভাবে SLF4J (Simple Logging Facade for Java) এবং Logback ব্যবহার করে লগিং। এই লগিং ব্যবস্থার মাধ্যমে আপনি অ্যাপ্লিকেশনের বিভিন্ন অংশের কার্যক্রম ট্র্যাক করতে পারবেন। স্প্রিং বুটের application.properties ফাইলে লগিং কনফিগারেশন খুব সহজে সেট করা যায়।


স্প্রিং বুটের লগিং কনফিগারেশন

স্প্রিং বুটে লগিং কনফিগারেশন করার জন্য application.properties বা application.yml ফাইল ব্যবহার করা হয়। এখানে আপনি লগ লেভেল, লগ আউটপুট ফরম্যাট, এবং অন্যান্য লগিং অপশন কনফিগার করতে পারেন।

লগ লেভেল কনফিগারেশন

স্প্রিং বুটে আপনি লগ লেভেল নির্ধারণ করতে পারেন যেমন TRACE, DEBUG, INFO, WARN, ERROR, এবং FATAL। এটি আপনাকে লগ আউটপুটের পরিমাণ নিয়ন্ত্রণ করতে সাহায্য করে। আপনি নির্দিষ্ট প্যাকেজ বা ক্লাসের জন্য লগ লেভেলও কনফিগার করতে পারেন।

উদাহরণ:
# স্প্রিং বুট লগিং লেভেল কনফিগারেশন
logging.level.root=INFO
logging.level.org.springframework.web=DEBUG
logging.level.com.example.myapp=TRACE

এখানে:

  • logging.level.root=INFO - রুট লগ লেভেল INFO নির্ধারণ করে।
  • logging.level.org.springframework.web=DEBUG - স্প্রিং ওয়েব প্যাকেজের জন্য DEBUG লেভেল নির্ধারণ করে।
  • logging.level.com.example.myapp=TRACE - com.example.myapp প্যাকেজের জন্য TRACE লেভেল নির্ধারণ করে।

লগ আউটপুট কনফিগারেশন

স্প্রিং বুটের লগ আউটপুট ফরম্যাট এবং আউটপুট ডিভাইস কনফিগার করা যায়। আপনি কনসোলে (Console) লগ দেখতে চান অথবা ফাইল (File) আউটপুট চান সেটি নির্ধারণ করতে পারবেন।

কনসোলে লগ আউটপুট:
# কনসোলে লগ আউটপুট কনফিগারেশন
logging.level.root=INFO
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} - %msg%n

এখানে:

  • logging.pattern.console কনসোলে লগ আউটপুটের ফরম্যাট নির্ধারণ করে। %d{yyyy-MM-dd HH:mm:ss} তারিখ এবং সময়ের ফরম্যাট, %msg লগ বার্তা এবং %n নতুন লাইন যুক্ত করে।
ফাইলে লগ আউটপুট:
# ফাইলের মধ্যে লগ আউটপুট কনফিগারেশন
logging.file.name=app.log
logging.level.root=DEBUG

এখানে:

  • logging.file.name=app.log ফাইল আউটপুটের জন্য ফাইলের নাম নির্ধারণ করে। ফাইলটি অ্যাপ্লিকেশনের রুট ডিরেক্টরিতে app.log নামে তৈরি হবে।
লগ আউটপুটের ফাইলের অবস্থান কনফিগার করা:
# লগ ফাইলের অবস্থান নির্ধারণ
logging.file.path=/var/logs/myapp
logging.level.root=INFO

এখানে:

  • logging.file.path=/var/logs/myapp ফাইলের অবস্থান নির্ধারণ করে যেখানে লগ ফাইলটি সংরক্ষিত হবে।

লগ ফাইল আর্কাইভিং কনফিগারেশন

স্প্রিং বুট আপনাকে লগ আর্কাইভিংয়ের জন্য একটি পদ্ধতি প্রদান করে। এটি বড় ফাইলগুলোকে আর্কাইভ করতে সাহায্য করে।

# লগ আর্কাইভ কনফিগারেশন
logging.file.max-size=10MB
logging.file.max-history=30

এখানে:

  • logging.file.max-size=10MB - একটি লগ ফাইলের সর্বোচ্চ আকার 10MB নির্ধারণ করে।
  • logging.file.max-history=30 - সর্বাধিক 30টি লগ ফাইল সংরক্ষণ করতে বলা হয়। পুরানো ফাইলগুলি আর্কাইভ হয়ে যাবে।

কাস্টম লগ কনফিগারেশন

আপনি যদি আরও উন্নত কাস্টমাইজেশন চান, যেমন লগব্যাক কনফিগারেশন, তাহলে logback-spring.xml ফাইল ব্যবহার করতে পারেন। স্প্রিং বুট ডিফল্টভাবে Logback ব্যবহার করে এবং আপনি এটি কাস্টমাইজ করতে পারবেন।

<configuration>
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
    </root>
</configuration>

এখানে, আপনি কনসোল অ্যাপেন্ডারের মাধ্যমে লগ আউটপুট কনফিগার করেছেন এবং লগের ফরম্যাটও নির্ধারণ করেছেন।


উপসংহার

স্প্রিং বুটের application.properties ফাইলে লগিং কনফিগারেশন খুবই সহজ এবং সহজে কাস্টমাইজযোগ্য। আপনি লগের লেভেল, আউটপুট ফরম্যাট, আউটপুট ডিভাইস (কনসোল বা ফাইল), এবং লগ আর্কাইভিং কনফিগার করতে পারবেন। এগুলো ব্যবহারের মাধ্যমে আপনি আপনার অ্যাপ্লিকেশনের কার্যক্রম ট্র্যাক করতে পারবেন এবং প্রয়োজনে ত্রুটিগুলি দ্রুত সনাক্ত করতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...